package cn.iocoder.yudao.module.vos.controller.admin.secretaccount.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import cn.idev.excel.annotation.*;

@Schema(description = "管理后台 - 密钥管理 Response VO")
@Data
@ExcelIgnoreUnannotated
public class SecretAccountRespVO {

    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31634")
    @ExcelProperty("ID")
    private Long id;

    @Schema(description = "租户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "32511")
    @ExcelProperty("租户ID")
    private Long rechargeTenantId;

    @Schema(description = "过滤网关", example = "王五")
    @ExcelProperty("过滤网关")
    private String filterName;

    @Schema(description = "密钥", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("密钥")
    private String appSecret;

    @Schema(description = "到期时间")
    @ExcelProperty("到期时间")
    private LocalDateTime expireTime;

    @Schema(description = "充值余额(元)", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("充值余额(元)")
    private BigDecimal balance;

    @Schema(description = "是否启用 1启用 0停用", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("是否启用 1启用 0停用")
    private Boolean enabled;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "产品权限")
    private String productPermissions;

}
